github.com/0chain/gosdk@v1.17.11/docs/uml/rename object.puml (about)

     1  @startuml
     2  participant "<size:20><&terminal></size> ./zbox rename" as cli
     3  collections gosdk
     4  collections blobber
     5  
     6  cli -> gosdk: GetAllocation(allocationID)
     7  cli -> gosdk: GetFileStats(remotepath)
     8  alt not empty file stats
     9  cli -> gosdk: GetFileMeta(remotepath)
    10  end
    11  cli -> gosdk: RenameObject(remotepath, destpath)
    12  
    13  gosdk -> gosdk: check initialized allocation
    14  gosdk -> gosdk: check valid path
    15  gosdk -> gosdk: create rename request
    16  
    17  group for each blobber (blobber, bidx)
    18  gosdk -> blobber: call http request to get object tree
    19  gosdk -> blobber: call http request to rename blobber
    20  alt successful status code
    21  gosdk -> gosdk: increase consensus and change renameMask
    22  end
    23  end
    24  
    25  gosdk -> gosdk: check threshold consensus
    26  gosdk -> gosdk: create commit request
    27  
    28  group for each bit 1 in the renameMask
    29  gosdk -> blobber: add commit request
    30  end
    31  
    32  group for each successful commit
    33  gosdk -> gosdk: increase consensus
    34  end
    35  
    36  gosdk -> gosdk: check threshold consensus
    37  @enduml